<?php
	require_once('include/menu.class.php');
	require_once('include/const.inc.php');
	require_once('include/database.class.php');
	User::start();
	$menu = Menu::create();
	$db = new Database();
	echo '<?xml version="1.0" encoding="UTF-8"?>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="pl">
<head>
	<title>Baza danych obiektów turystycznych</title>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<link rel="icon" type="image/png" href="images/photos.png">
	<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>

	<?php
	echo $menu;
	if(($_GET['modifiedopening']=='yes'))
		{
			?>
				<div id="success-listing">
				<ul>
			<?php
					if ($_GET['modifiedopening']=='yes') echo '<li>Obiekt zmodyfikowany.</li>';
			?>
				</ul>
				</div>
			<?php
		}
		if(($_GET['gotticket']=='no') || (isset($_GET['err'])))
		{
			?>
				<div id="error-listing">
				<ul>
			<?php
				if ($_GET['gotticket']=='no')
				{
					echo '<li>Nie udało się zarezerwować biletu.</li>';
					if(isset($_GET['err'])) echo '<br/>'.base64_decode($_GET['err']);
				}
			?>
				</ul>
				</div>
			<?php
		}
		
	?>
	<div id="admin-container">
		<?php
			if(!isset($_GET['id_ob']))
			{
			?>
				<div class="objects-list">
				<form method="get" action="objects.php">
					Kategoria: <select name="id_kat" onchange="this.form.submit()">
						<option value="0">Wszystkie</option>
					<?php
						$categories = $db->query('SELECT id_kat, nazwa FROM kategorie;');
						$found = false;
						foreach($categories as $category)
						{
							echo '<option value="'.$category['id_kat'].'" '.(($_GET['id_kat'] == $category['id_kat'] && $found = true)?'selected':'').'>'.$category['nazwa'].'</option>';
						}
						if(!$found) $_GET['id_kat'] = 0;
					?>
					</select>
					<noscript><input type="submit" value="OK"></noscript>
				</form>
				<?php
					$objects = $db->query("SELECT id_ob,nazwa,adres,miasto,kraj,pojemnosc,opis_kr,(SELECT url FROM zdjecia WHERE zdjecia.id_ob = obiekty.id_ob ORDER BY data LIMIT 1) AS zdjecie, ocena_ob(id_ob) AS ocena FROM obiekty".((isset($_GET['id_kat']) && (intval($_GET['id_kat']) != 0)) ? (" WHERE id_kat=".intval($_GET['id_kat'])) : "")." ORDER BY ocena DESC NULLS LAST;");
					if(count($objects) == 0) echo 'Brak obiektów w tej kategorii.';
					else foreach($objects as $object)
					{
						echo '<div class="object-desc">';
						echo '<div class="object-desc-photo"><a href="objects.php?id_ob='.$object['id_ob'].'">';
						if ($object['zdjecie'] != '') echo '<img src="'.$object['zdjecie'].'" class="object-photo-small" />';
						else echo '<img src="images/placeholder.jpg" class="object-photo-small" />';
						echo '</a></div>';
						echo '<div class="object-rest-with-photo">';
							echo '<div class="object-desc-name"><a href="objects.php?id_ob='.$object['id_ob'].'">'.$object['nazwa'].'</a></div>';
							echo '<div class="object-desc-short">'.$object['opis_kr'].'</div>';
						echo '</div>';
						$addr = '';
						if($object['adres'] != '') $addr .= $object['adres'].', ';
						if($object['miasto'] != '') $addr .= $object['miasto'].', ';
						$addr .= $object['kraj'];
						
						echo '<div class="object-desc-finish">';
						echo '<div style="float: left; margin-left: 60px;">';
						if(isset($object['ocena']))
						{
							?>
							<div class='stars-bg' title='Ocena: <?php echo number_format($object['ocena'],2); ?>'><div class='stars' style='width: <?php echo ($object['ocena']/5*80) ?>px;'></div></div>
							<?php
						}
						echo '</div>';
						if(User::isLoggedIn())
						{
							echo '<a href="getticket.php?id_ob='.$object['id_ob'].'&p=0"><img src="images/tag_blue_add.png"  title="Zarezerwuj bilet bez przewodnika"/></a>';
							echo '&nbsp;';
							$languages = $db->query('SELECT DISTINCT nazwa_jez FROM wejscia WHERE id_ob='.$object['id_ob'].' AND data >= current_date AND il_wolnych_miejsc(wejscia.il_miejsc) > 0 AND nazwa_jez IS NOT NULL');
							if(count($languages) > 0)
							{
								echo '<a href="getticket.php?id_ob='.$object['id_ob'].'&p=1"><img src="images/tag_orange_add.png"  title="Zarezerwuj bilet z przewodnikiem"/></a>';
								echo '&nbsp;';
							}
							if(User::isAdmin())
							{
								echo '<a href="openings.php?id_ob='.$object['id_ob'].'"><img src="images/time.png" title="Okresy otwarcia"/></a>';
								echo '&nbsp;';
								echo '<a href="addgroup.php?id_ob='.$object['id_ob'].'"><img src="images/group_add.png"  title="Dodaj wejście"/></a>';
								echo '&nbsp;';
								echo '<a href="addtype.php?id_ob='.$object['id_ob'].'"><img src="images/add.png"  title="Dodaj rodzaj biletu"/></a>';
								echo '&nbsp;';
							}
						}
						echo '<a href="http://maps.google.com/?q='.$addr.'" target="_blank"><img src="images/map.png" title="Znajdź w Google Maps"/></a>';
						echo '</div>';
						echo '</div>';
					}
				?>
				</div>
			<?php
			}
			else
			{
				$id = intval($_GET['id_ob']);
				$object = $db->query('SELECT *,ocena_ob(id_ob) AS ocena FROM obiekty WHERE id_ob='.$id);
				if(count($object) == 0)
				{
					echo 'Błędne ID obiektu.';
					
				}
				else
				{

					$photos = $db->query('SELECT * FROM zdjecia WHERE id_ob='.$id);
					$openings = $db->query('SELECT dzien_tyg, to_char(godzina_od,\'HH24:MI\') as godzina_od, to_char(godzina_do,\'HH24:MI\') as godzina_do FROM okresy_otwarcia WHERE id_ob='.$id.' ORDER BY dzien_tyg,godzina_od');
					$comments = $db->query('SELECT login, ocena_ob, ocena_przew, przewodnicy.imie||\' \'||przewodnicy.nazwisko AS przewodnik, komentarz FROM oceny NATURAL JOIN wejscia LEFT JOIN przewodnicy USING(id_przew) WHERE wejscia.id_ob='.$id);
					$object = $object[0];
					$addr = '';
					if($object['adres'] != '') $addr .= $object['adres'].', ';
					if($object['miasto'] != '') $addr .= $object['miasto'].', ';
					$addr .= $object['kraj'];
					echo '<div class="object-view-container">';
						echo '<div class="object-view-title">'.$object['nazwa'].'</div>';
						echo '<div style="margin: 0 auto; width: 80px;">';
						if(isset($object['ocena']))
						{
							?>
							<div class='stars-bg' title='Ocena: <?php echo number_format($object['ocena'],2); ?>'><div class='stars' style='width: <?php echo ($object['ocena']/5*80) ?>px;'></div></div>
							<?php
						}
						echo '</div>';
						echo '<div class="object-view-description">'.$object['opis_dl'].'</div>';
						echo '<div class="object-view-openings">';
						if(count($openings) == 0) echo 'Obiekt nieczynny.';
						else
						{
							$languages = $db->query('SELECT DISTINCT nazwa_jez FROM wejscia WHERE id_ob='.$id.' AND data >= current_date AND il_wolnych_miejsc(wejscia.il_miejsc) > 0 AND nazwa_jez IS NOT NULL');
							$guideAvailable = true;
							if(count($languages) == 0)
							{
								$guideAvailable = false;
								echo 'Zwiedzanie aktualnie dostępne tylko bez przewodnika. ';
							}
							else
							{
								echo 'Zwiedzanie z przewodnikiem dostępne w językach: <ul>';
								foreach($languages as $language)
								{
									echo '<li>'.$language['nazwa_jez'].'</li>';
								}
								echo '</ul>';
							}
							echo 'Obiekt czynny w następujących porach:';
							echo '<ul>';
							foreach($openings as $opening)
							{
								echo '<li>'.$weekdays[$opening['dzien_tyg']].', '.$opening['godzina_od'].' - '.$opening['godzina_do'].'</li>';
							}
							echo '</ul>';
						}
						echo '</div>';
						
						echo '<div class="object-view-menu">';
						if(User::isLoggedIn())
						{
							echo '<a href="getticket.php?id_ob='.$object['id_ob'].'&p=0"><img src="images/tag_blue_add.png" /> Rezerwuj bilet bez przewodnika</a>';
							if($guideAvailable) echo '<a href="getticket.php?id_ob='.$object['id_ob'].'&p=1"><img src="images/tag_orange_add.png" /> Rezerwuj bilet z przewodnikiem</a>';
							if(User::isAdmin()) echo '<a href="openings.php?id_ob='.$object['id_ob'].'"><img src="images/time.png" /> Okresy otwarcia</a><br/>';
							if(User::isAdmin()) echo '<a href="addgroup.php?id_ob='.$object['id_ob'].'"><img src="images/group_add.png" /> Wejścia</a>';
							if(User::isAdmin()) echo '<a href="addtype.php?id_ob='.$object['id_ob'].'"><img src="images/add.png" /> Rodzaje biletów</a>';
						}
						echo '<a href="http://maps.google.com/?q='.$addr.'" target="_blank"><img src="images/map.png" /> '.$addr.'</a>';
						echo '</div>';
						
					echo '</div>';
					echo '<div class="object-gallery">';

					foreach($photos as $photo)
					{
						echo '<a href="'.$photo['url'].'" target="_blank"><img src="'.$photo['url'].'" class="object-gallery-photo" alt="'.$photo['podpis'].'" title="'.$photo['podpis'].'"/></a>';
					}
					echo '</div>';
					echo '<div class="comments">';
					foreach($comments as $comment) if($comment['komentarz'] != '')
					{
						?>
						<div class='comment'>
							<img src="images/user.png" /> <?php
								echo $comment['login'];
							?><br/>
							<div style='width: 110px; margin: 0 auto;'>
								<img src="images/photos.png" /><div class='stars-bg' style='float: right;' title='Ocena obiektu: <?php echo $comment['ocena_ob']; ?>'><div class='stars' style='width: <?php echo ($comment['ocena_ob']/5*80) ?>px;'></div></div><div style="clear: both;"></div>
							</div>
							<?php
							if(isset($comment['ocena_przew']))
							{
								?>
								<div style='width: 110px; margin: 0 auto;'>
									<img src="images/user_orange.png" /><div class='stars-bg' style='float: right;' title='Ocena przewodnika (<?php echo $comment['przewodnik']; ?>): <?php echo $comment['ocena_przew']; ?>'><div class='stars' style='width: <?php echo ($comment['ocena_przew']/5*80) ?>px;'></div></div><div style="clear: both;"></div>
								</div>
								<?php
							}
							?>
							<p><?php echo $comment['komentarz']; ?></p>
						</div>
						<?php
					}
					echo '</div>';
				}
			}
		?>
	</div>
</body>
</html>